CXML Integrations

cXML Integrations

Overview

The Softchoice B2B integration framework includes CXML inbound and outbound endpoints, along with mapping and processing capabilities to support customer ordering and invoicing integrations.

Reference to Common Guides and Specs

Softchoice CXML integrations adhere to common industry standards. For information on cXML standards, please refer to your procurement systems implementation guide.

Softchoice Specification

Softchoice supports all existing CXML versions. In addition to the standard specifications, we streamline the use of the schema to ensure that incoming CXML payloads require minimal to no variations in mapping logic. Below are the key schema usage details and additional specifications:

Order informationDesignated fieldsComments
Identification and authorizationThese sections follow the common standards.
Company nameIf possible, please use from identity for the company name.
Account numberCustomers send their Softchoice account number in the payload.
Bill-to account numberCustomers send their Softchoice bill-to account number in CXML bill-to section.
Sold-to account numberCustomers send their Softchoice sold-to account number in CXML business partner section. Details in the onboarding document.
Ship-to detailsThis section follows the standard practices.
Ship-to instructionsShip-to instructions are passed in extrinsic fields. Information on what keys can be used is in the onboarding document.
General order instructionsGeneral instructions are passed in extrinsic fields. Information on what keys can be used is in the onboarding document.
CommentsComments are passed in comment fields.
Basic order and order line informationAll basic order and order line information such as order number, SKU, quantity, prices... follow the common practices.
Quote referencetbd.

Samples

CXML Order Sample
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd">

<cXML xml:lang="en-US" timestamp="2008-05-19T19:51:57+00:00" payloadID="1211226717.22017@ip-10-251-122-83" version="1.2.014">

    <Header>

        <From>

            <Credential domain="duns">

                <Identity>Customer DUN number</Identity>

            </Credential>

        </From>

        <To>

            <Credential domain="Duns">

                <Identity>Softchoice DUN number</Identity>

            </Credential>

        </To>

        <Sender>

            <Credential domain="duns">

                <Identity>dell</Identity>

                <SharedSecret>dell</SharedSecret>

            </Credential>

            <UserAgent>Coupa Procurement 1.0</UserAgent>

        </Sender>

    </Header>

    <Request deploymentMode="production">

        <OrderRequest>

            <OrderRequestHeader orderID="6112" orderDate="2008-05-19T19:51:55Z" type="new" orderType="regular">

                <Total>

                    <Money currency="USD">1505.0</Money>

                </Total>

                <ShipTo>

                    <Address isoCountryCode="US" addressID="3119">

                        <Name xml:lang="en">jmadden</Name>

                        <PostalAddress name="default">

                            <DeliverTo>j maddedn</DeliverTo>

                            <Street>333 East Hill Dr</Street>

                            <City>san leandro</City>

                            <State>ca</State>

                            <PostalCode>22222</PostalCode>

                            <Country isoCountryCode="US">United States</Country>

                        </PostalAddress>

                        <Email name="default">jmadden@coupa1.com</Email>

                    </Address>

                    <IdReference domain="buyerAccountID" identifier="xyz"/>

                </ShipTo>

                <BillTo>

                    <Address isoCountryCode="US" addressID="142">

                        <Name xml:lang="en">SOB1</Name>

                        <PostalAddress name="default">

                            <DeliverTo>Noah Sanity Attn: Noah Noah</DeliverTo>

                            <Street>3420 Flatiron Way</Street>

                            <City>West Index</City>

                            <State>NJ</State>

                            <PostalCode>43023</PostalCode>

                            <Country isoCountryCode="US">United States</Country>

                        </PostalAddress>

                    </Address>

                    <IdReference domain="BillToAccountID" identifier="abcd"/>

                </BillTo>

                <BusinessPartner role="soldTo" type="organization">

                    <IdReference domain="ShipToAccountID" identifier="Customer_salesmaster_number">

                    </ BusinessPartner>

                    <Contact role="endUser">

                        <Name xml:lang="en">j maddedn</Name>

                        <Email name="default">jmadden@coupa1.com</Email>

                    </Contact>

                    <Extrinsic name="Shipping instruction">some instruction</Extrinsic>

                    <Extrinsic name="Required on site">?</Extrinsic>

                    <Extrinsic name="Quote held order number">?</Extrinsic>

                    <Extrinsic name="Packing slip notes">?</Extrinsic>

                    <Extrinsic name="Shipping instructions">?</Extrinsic>

                    <Comments xml:lang="en">Some comments</Comments>

                </OrderRequestHeader>

                <ItemOut quantity="1" lineNumber="1">

                    <ItemID>

                        <SupplierPartID>223-4511</SupplierPartID>

                        <SupplierPartAuxiliaryID>1005379527029\1</SupplierPartAuxiliaryID>

                    </ItemID>

                    <ItemDetail>

                        <UnitPrice>

                            <Money currency="USD">1505.0</Money>

                        </UnitPrice>

                        <Description xml:lang="en">OptiPlex 755 Energy Smart Minitower;IntelREG CoreTM 2 Quad Processor Q6600 (2.40GHz, 2X4M, 1066MHz FSB)</Description>

                        <UnitOfMeasure>EA</UnitOfMeasure>

                        <Classification domain="UNSPSC">unknown</Classification>

                    </ItemDetail>

                    <Tax>

                        <Money alternateCurrency="" alternateAmount="" currency="CAD">7.89</Money>

                        <Description xml:lang="en">$7.89 CAD</Description>

                        <TaxDetail percentageRate="13" category="hst" purpose="">

                            <TaxableAmount>

                                <Money alternateCurrency="" alternateAmount="" currency="CAD">60.72</Money>

                            </TaxableAmount>

                            <TaxAmount>

                                <Money alternateCurrency="" alternateAmount="" currency="CAD">7.89</Money>

                            </TaxAmount>

                            <Description xml:lang="en-US">HST@13%</Description>

                        </TaxDetail>

                    </Tax>

                    <Distribution>

                        <Accounting name="bbbb">

                            <Segment id="bbb" description="ORG" type="Organization" />

                            <Segment id="b" description="DEPT" type="Department" />

                            <Segment id="bb" description="PROJ" type="Project" />

                        </Accounting>

                        <Charge>

                            <Money currency="USD">1505.0</Money>

                        </Charge>

                    </Distribution>

                    <Extrinsic name="GL number">?</Extrinsic>

                    <Extrinsic name="Cost center">?</Extrinsic>

                    <Extrinsic name="Transit number">?</Extrinsic>

                    <Extrinsic name="Financial code">?</Extrinsic>

                    <Extrinsic name="Project number">?</Extrinsic>

                    <Extrinsic name="Referenced ID">?</Extrinsic>

                </ItemOut>

            </OrderRequest>

        </Request>

    </cXML>
CXML Invoice Sample Payload
<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.009/InvoiceDetail.dtd">

<cXML version="1.2.020" payloadID="2024112109204.90dc4acf-0332-4de4-9b03-da9ab4e82837@softchoice.com" timestamp="2024-11-21T04:15:13-00:00">

  <Header>

    <From>

      <Credential domain="DUNS">

        <Identity>xxxxxxxx</Identity>

      </Credential>

    </From>

    <To>

      <Credential domain="DUNS">

        <Identity>xxxxxxxx</Identity>

      </Credential>

    </To>

    <Sender>

      <Credential domain="DUNS">

        <Identity>xxxxxxxx</Identity>

        <SharedSecret>xxxxxxxx</SharedSecret>

      </Credential>

      <UserAgent>Coupa Supplier Network</UserAgent>

    </Sender>

  </Header>

  <Request deploymentMode="production">

    <InvoiceDetailRequest>

      <InvoiceDetailRequestHeader invoiceID="xxxxxxxx" purpose="standard" operation="new" invoiceDate="2024-11-20T00:00:01-00:00">

        <InvoiceDetailHeaderIndicator/>

        <InvoiceDetailLineIndicator isAccountingInLine="yes"/>

        <InvoicePartner>

          <Contact role="soldTo">

            <Name  xml:lang="en">xxxxxxxx</Name>

            <PostalAddress>

              <DeliverTo>xxxxxxxx</DeliverTo>

              <Street>xxxxxxxx</Street>

              <City>TORONTO</City>

              <State>ON</State>

              <PostalCode>xxxxxxxx</PostalCode>

              <Country isoCountryCode="CA">Canada</Country>

            </PostalAddress>

            <Email name="default">xxxxxxxx@email.com</Email>

            <Phone name="work">

              <TelephoneNumber>

                <CountryCode isoCountryCode="CA">1</CountryCode>

                <AreaOrCityCode>000</AreaOrCityCode>

                <Number>-000-0000</Number>

              </TelephoneNumber>

            </Phone>

          </Contact>

        </InvoicePartner>

        <PaymentTerm payInNumberOfDays="30"/>

        <Extrinsic name="CustomFields">

          <IdReference identifier="sales_tax_amounts_included_in_s_h_m" domain="CustomField">

            <Description  xml:lang="en">1.95</Description>

          </IdReference>

        </Extrinsic>

      </InvoiceDetailRequestHeader>

      <InvoiceDetailOrder>

        <InvoiceDetailOrderInfo>

          <OrderReference>

            <DocumentReference payloadID="1501489190"/>

          </OrderReference>

        </InvoiceDetailOrderInfo>

        <InvoiceDetailItem invoiceLineNumber="1" quantity="1">

          <UnitOfMeasure>EA</UnitOfMeasure>

          <UnitPrice>

            <Money currency="CAD">43.00</Money>

          </UnitPrice>

          <InvoiceDetailItemReference lineNumber="1">

            <ItemID>

              <SupplierPartID>2000032628</SupplierPartID>

            </ItemID>

            <Description  xml:lang="en">Logitech H570e Wired Headset, Mono Headphones with Noise-Cancelling Microphone, USB, in-Line Controls with Mute Button, Indicator LE</Description>

          </InvoiceDetailItemReference>

          <SubtotalAmount>

            <Money currency="CAD">43.00</Money>

          </SubtotalAmount>

        </InvoiceDetailItem>

      </InvoiceDetailOrder>

      <InvoiceDetailSummary>

        <SubtotalAmount>

          <Money currency="CAD">58.00</Money>

        </SubtotalAmount>

        <Tax>

          <Money currency="CAD">7.54</Money>

          <Description  xml:lang="en">total tax</Description>

          <TaxDetail purpose="tax" category="ON - HST" percentageRate="13.00">

            <TaxableAmount>

              <Money currency="CAD">58.00</Money>

            </TaxableAmount>

            <TaxAmount>

              <Money currency="CAD">7.54</Money>

            </TaxAmount>

            <TaxLocation  xml:lang="en">CA</TaxLocation>

          </TaxDetail>

        </Tax>

        <SpecialHandlingAmount>

          <Money currency="CAD">0.00</Money>

        </SpecialHandlingAmount>

        <ShippingAmount>

          <Money currency="CAD">16.95</Money>

        </ShippingAmount>

        <NetAmount>

          <Money currency="CAD">65.54</Money>

        </NetAmount>

      </InvoiceDetailSummary>

    </InvoiceDetailRequest>

  </Request>

</cXML>